لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش ساختن یک تجزیه کننده از ابتدا [ویدئو]
Building a Parser from Scratch [Video]
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
تجزیه و تحلیل یا تحلیل نحوی یکی از اولین مراحل در طراحی و پیاده سازی یک کامپایلر است. یک دستور زبان برنامه نویسی که به خوبی طراحی شده باشد، انگیزه بزرگی است که چرا کاربران زبان شما را ترجیح می دهند و انتخاب می کنند.
تجزیه کننده های نزولی بازگشتی گروهی از تجزیه کننده ها هستند که به طور گسترده در عمل در بسیاری از زبان های برنامه نویسی تولید استفاده می شود. برخلاف الگوریتمهای تجزیه خودکار، پیادهسازی دستی امکان کنترل کامل بر فرآیند تجزیه و مدیریت ساختارهای پیچیده را فراهم میکند، که ممکن است در تجزیهکنندههای خودکار امکانپذیر نباشد.
علاوه بر این، پیادهسازی یک تجزیهکننده دستی کامل از ابتدا امکان درک و دیدن این فرآیند را از داخل، ابهامزدایی از ساختارهای داخلی، و تبدیل تجزیهکنندههای ساختمانی به یک کار مهندسی جالب فراهم میکند.
در کلاس Building a Parser from Scratch، ما به پیاده سازی عملی خالص، ساختن و یادگیری جنبه های مختلف تجزیه کننده ها می پردازیم.
در این دوره، مفهوم تجزیه نزولی بازگشتی را یاد خواهید گرفت، متوجه خواهید شد که نشانهساز چیست و چگونه با ماژول تجزیهکننده همکاری میکند، یاد میگیرید درخت نحو انتزاعی (AST) چیست و چگونه میتوانید فرمتهای مختلف این AST ها را داشته باشید، "lookahead" چیست. و تجزیه پیشبینی، و در نهایت یک تجزیهکننده برای یک زبان برنامهنویسی کامل، مشابه جاوا یا جاوا اسکریپت بسازید.
همه منابع و فایل های کد در اینجا قرار می گیرند: https://github.com/PacktPublishing/Building-a-Parser-from-scratch درباره تجزیه کننده های نزولی بازگشتی بیاموزید
درباره تجزیه از بالا به پایین بیاموزید
درباره درختان نحو انتزاعی (AST) بیاموزید
درباره توکن ساز و توکن ها بیاموزید
با فرمت های مختلف AST آشنا شوید
درباره مشخصات عبارات منظم بیاموزید این دوره برای هر مهندس کنجکاویی است که می خواهد در ساختن سیستم های پیچیده مهارت کسب کند (و ساخت تجزیه کننده برای یک زبان برنامه نویسی یک کار مهندسی بسیار پیشرفته است!) و دانش قابل انتقال برای ساخت چنین سیستم هایی را به دست آورد.
اگر به طور خاص به کامپایلرها، مفسرها و ابزارهای تبدیل کد منبع علاقه دارید، این کلاس نیز برای شما مناسب است.
پیش نیازهای این دوره ساختارهای داده و الگوریتم های اصلی است: درختان، لیست ها، پیمایش و عبارات منظم. درباره بیان اولیه و نشانه ساز بیاموزید * در مورد ساختار برنامه و فرمت های AST بیاموزید * در مورد جریان کنترل و عملکردها بیاموزید
سرفصل ها و درس ها
عبارات اساسی و توکنایزر
Basic Expressions and Tokenizer
توکنایزر | تجزیه کننده
Tokenizer | Parser
اعداد | رشته های
Numbers | Strings
از ماشینهای حالت تا عبارات منظم
From State Machines to Regular Expressions
ساختار برنامه
Program Structure
بیانیه ها و فهرست بیانیه ها
Statements and Statement List
بلوک ها: محدوده های تودرتو
Blocks: Nested Scopes
فرمت های مختلف AST
Different AST Formats
عبارات باینری
Binary Expressions
کنترل جریان و توابع
Control Flow and Functions
بیان تکلیف
Assignment Expression
بیانیه متغیر
Variable Statement
اگر - بیانیه
If-Statement
برابری | منطقی
Equality | Logical
بیان Unary
Unary Expression
بیانیه تکرار
Iteration Statement
اعلامیه عملکرد
Function Declaration
برنامه نویسی شی گرا
Object-Oriented Programming
بیان اعضا
Member Expression
Call Expression
Call Expression
OOP | کلاس ها
OOP | Classes
اجرایی نهایی
Final Executable
نمایش نظرات
Packtpub یک ناشر دیجیتالی کتابها و منابع آموزشی در زمینه فناوری اطلاعات و توسعه نرمافزار است. این شرکت از سال 2004 فعالیت خود را آغاز کرده و به تولید و انتشار کتابها، ویدیوها و دورههای آموزشی میپردازد که به توسعهدهندگان و متخصصان فناوری اطلاعات کمک میکند تا مهارتهای خود را ارتقا دهند. منابع آموزشی Packtpub موضوعات متنوعی از جمله برنامهنویسی، توسعه وب، دادهکاوی، امنیت سایبری و هوش مصنوعی را پوشش میدهد. محتوای این منابع به صورت کاربردی و بهروز ارائه میشود تا کاربران بتوانند دانش و تواناییهای لازم برای موفقیت در پروژههای عملی و حرفهای خود را کسب کنند.
دیمیتری سوشنیکوف یک مهندس نرم افزار و مدرس در موضوعات مختلف علوم کامپیوتر است. او علاقه زیادی به آموزش دارد و بر محتوای آموزشی با کیفیت بالا تمرکز می کند: سخنرانی های متحرک مختصر و مستقیم با یادداشت های ویرایش زنده.
نمایش نظرات